<template>
  <view>
    <button @getuserinfo="getInfo" open-type="getUserInfo" type="primary">微信登录</button>
  </view>
</template>

<script>
export default {
  name: "auth",
  data() {
    return {};
  },
  methods: {
    // 手动获取用户信息

    // 当用户为授权时====需要手动点击按钮，来触发事件

    getInfo(e) {
      console.log("ohh");
      console.log(e, "我是事件");
    },
  },

  // 当页面已加载就立即执行的回调函数
  async onLoad() {
    //1. 检测授权===用getSetting（）来检测用户是否已经授权
    let [err, res] = await uni.getSetting();
    console.log(res, "我是自动触发的");

    // 2.判断用户是否授权
    if (res.authSetting["scope.userInfo"]) {
      // 已经授权时，直接获取用户的信息，
      let [err1, info] = await uni.getUserInfo();
      console.log(info, "已授权后得到的用户数据");
    } else {
      // 当未授权时，或者是第一次登陆此程序时。需要用户点击登陆。可做优化，==提醒用户“您为授权。请先手动登陆”
      return uni.showToast({ title: "您为授权，请手动点击登陆...",mask: true,})
    }

    // 当用户已经授权时----自动获取用户的信息
  },
};
</script>

<style lang="scss" scoped>
button {
  width: 600rpx;
  margin: 200rpx auto 0;
}
</style>